Only stat when needed.
authorMorten Welinder <terra@gnome.org>
Mon, 1 Mar 2004 20:07:26 +0000 (20:07 +0000)
committerMorten Welinder <mortenw@src.gnome.org>
Mon, 1 Mar 2004 20:07:26 +0000 (20:07 +0000)
2004-03-01  Morten Welinder  <terra@gnome.org>

* gtk/gtkfilesystemunix.c (filename_get_info): Only stat when
needed.

ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtkfilesystemunix.c

index bbb58ca6128ad9c726a71e0d1b6c2247122b571c..f698631700005ec84f3c74e10f4cd9780d0aa6a4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2004-03-01  Morten Welinder  <terra@gnome.org>
 
+       * gtk/gtkfilesystemunix.c (filename_get_info): Only stat when
+       needed.
+
        * gtk/gtkfilesystemmodel.c (file_model_node_is_visible): Simplify
        semantics and check for errors.
 
index bbb58ca6128ad9c726a71e0d1b6c2247122b571c..f698631700005ec84f3c74e10f4cd9780d0aa6a4 100644 (file)
@@ -1,5 +1,8 @@
 2004-03-01  Morten Welinder  <terra@gnome.org>
 
+       * gtk/gtkfilesystemunix.c (filename_get_info): Only stat when
+       needed.
+
        * gtk/gtkfilesystemmodel.c (file_model_node_is_visible): Simplify
        semantics and check for errors.
 
index bbb58ca6128ad9c726a71e0d1b6c2247122b571c..f698631700005ec84f3c74e10f4cd9780d0aa6a4 100644 (file)
@@ -1,5 +1,8 @@
 2004-03-01  Morten Welinder  <terra@gnome.org>
 
+       * gtk/gtkfilesystemunix.c (filename_get_info): Only stat when
+       needed.
+
        * gtk/gtkfilesystemmodel.c (file_model_node_is_visible): Simplify
        semantics and check for errors.
 
index bbb58ca6128ad9c726a71e0d1b6c2247122b571c..f698631700005ec84f3c74e10f4cd9780d0aa6a4 100644 (file)
@@ -1,5 +1,8 @@
 2004-03-01  Morten Welinder  <terra@gnome.org>
 
+       * gtk/gtkfilesystemunix.c (filename_get_info): Only stat when
+       needed.
+
        * gtk/gtkfilesystemmodel.c (file_model_node_is_visible): Simplify
        semantics and check for errors.
 
index bbb58ca6128ad9c726a71e0d1b6c2247122b571c..f698631700005ec84f3c74e10f4cd9780d0aa6a4 100644 (file)
@@ -1,5 +1,8 @@
 2004-03-01  Morten Welinder  <terra@gnome.org>
 
+       * gtk/gtkfilesystemunix.c (filename_get_info): Only stat when
+       needed.
+
        * gtk/gtkfilesystemmodel.c (file_model_node_is_visible): Simplify
        semantics and check for errors.
 
index 2becd2dfebbd159435419d9faa1f1e2a3ffdb550..77649316fa8773a9acf89f3a96556173697d5eac 100644 (file)
@@ -1358,10 +1358,15 @@ filename_get_info (const gchar     *filename,
 {
   GtkFileInfo *info;
   struct stat statbuf;
+  gboolean do_stat = (types & (GTK_FILE_INFO_IS_FOLDER |
+                              GTK_FILE_INFO_IS_HIDDEN |
+                              GTK_FILE_INFO_MODIFICATION_TIME |
+                              GTK_FILE_INFO_SIZE));
 
   /* If stat fails, try to fall back to lstat to catch broken links
    */
-  if (stat (filename, &statbuf) != 0 &&
+  if (do_stat &&
+      stat (filename, &statbuf) != 0 &&
       lstat (filename, &statbuf) != 0)
     {
       gchar *filename_utf8 = g_filename_to_utf8 (filename, -1, NULL, NULL, NULL);